#include <iostream>
#include <string>

using namespace std;

class person
{

public:     // 公共类型
    int A;
protected:  // 保护类型
    int B;
private:    // 私有类型
    int C;

public:
    void set_C(int C)
    {
        this->C = C;
    }
};
/*
通过 公共类型继承 可以访问 => 公共类型 保护类型
    int A; == 公共类型
    int B; == 保护类型
    int C; === 私有类型  不可访问

通过 保护类型继承 可以访问 => 公共类型 保护类型
        但是 公共类型 会变成  保护类型
    int A; == 保护类型   类外不可访问
    int B; == 保护类型

通过 私有类型继承 可以访问 => 公共类型 保护类型
        公共类型 保护类型 变成 私有类型
    int A; == 私有类型    子类不能访问
    int B; == 私有类型

*/

class Student : private person
{

public:
    void show()
    {
        this->A = 10;
    }

};









int main(int argc, char const *argv[])
{
    Student S1;
    // S1.A = 10;

    
    cout << "hello world" << endl;
    
    return 0;
}
